package com.grupobbva.seguridad.domain;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;


/**
 * The persistent class for the PERFIL_APLICACION_OPCION database table.
 * 
 */
@Entity
@Table(name="PERFIL_OPCION")
public class PerfilOpcion implements Serializable {
	private static final long serialVersionUID = 1L;

	@EmbeddedId
	private PerfilOpcionPK id;

    @Temporal( TemporalType.DATE)
	@Column(name="FECHA_CREACION")
	private Date fechaCreacion;

	@Column(name="USUARIO_CREACION")
	private String usuarioCreacion;

	//bi-directional many-to-one association to Opcion
    @ManyToOne
	@JoinColumns({
		@JoinColumn(name="APLICACION_ID", referencedColumnName="APLICACION_ID", insertable=false, updatable=false),
		@JoinColumn(name="OPCION_ID", referencedColumnName="OPCION_ID", insertable=false, updatable=false)
	})
	private Opcion opcion;

	//bi-directional many-to-one association to Perfil
    @ManyToOne
	@JoinColumns({
		@JoinColumn(name="APLICACION_ID", referencedColumnName="APLICACION_ID", insertable=false, updatable=false),
		@JoinColumn(name="PERFIL_ID", referencedColumnName="PERFIL_ID", insertable=false, updatable=false)
	})
	private Perfil perfil;
    
    @Column(name="CODIGO_LEER")
    private String codigoLeer;
    
    @Column(name="CODIGO_CREAR")
    private String codigoCrear;
    
    @Column(name="CODIGO_ELIMINAR")
    private String codigoEliminar;
    

    public PerfilOpcion() {
    }
    public PerfilOpcion(PerfilOpcionPK id) {
    	this.id = id;
    }

	public PerfilOpcionPK getId() {
		return this.id;
	}

	public void setId(PerfilOpcionPK id) {
		this.id = id;
	}
	
	public Date getFechaCreacion() {
		return this.fechaCreacion;
	}

	public void setFechaCreacion(Date fechaCreacion) {
		this.fechaCreacion = fechaCreacion;
	}

	public String getUsuarioCreacion() {
		return this.usuarioCreacion;
	}

	public void setUsuarioCreacion(String usuarioCreacion) {
		this.usuarioCreacion = usuarioCreacion;
	}

	public Opcion getOpcion() {
		return this.opcion;
	}

	public void setOpcion(Opcion opcion) {
		this.opcion = opcion;
	}
	
	public Perfil getPerfilAplicacion() {
		return this.perfil;
	}

	public void setPerfilAplicacion(Perfil perfil) {
		this.perfil = perfil;
	}
	public String getCodigoLeer() {
		return codigoLeer;
	}
	public void setCodigoLeer(String codigoLeer) {
		this.codigoLeer = codigoLeer;
	}
	public String getCodigoCrear() {
		return codigoCrear;
	}
	public void setCodigoCrear(String codigoCrear) {
		this.codigoCrear = codigoCrear;
	}
	public String getCodigoEliminar() {
		return codigoEliminar;
	}
	public void setCodigoEliminar(String codigoEliminar) {
		this.codigoEliminar = codigoEliminar;
	}
	
	
}